import static org.junit.Assert.*;

import org.junit.Before;
import org.junit.Test;
import org.junit.After;
import org.junit.Ignore;

public class LiczbyTestJUnit4 {

	Liczby licz = null;

	@Before
	// równoznaczne z Setup() z JUnit3 zostanie wykonana przed kazdym
	// przypadkiem testowym
	public void inicjuj() throws LiczbyException {
		licz = new Liczby(5);
	}

	@Test
	public void One() throws LiczbyException { // Zwykły test equals
		String wynik = licz.zapis(2);
		assertEquals("powinno byc 101", "101", wynik);
	}

	@Test(expected = LiczbyException.class)
	// Sprawdza czy wyjątek sie wywoła
	public void testExceptionIsThrown() throws LiczbyException {
		licz.zapis(20);
	}

	@Test(timeout = 1)
	// Zawiedzie jeśli wykonywanie metody będzie dłuższe niż 1 milisekunda
	public void CiekawanazwaThree() throws LiczbyException {
		licz.zapis(2);
	}

	@Ignore
	// Test tej klasy zostanie zignorowany (Powinien być błąd)
	@Test(timeout = 1)
	public void Ciekawa_nazwa_ignore() throws LiczbyException {
		licz.zapis(20);
	}

	@After
	// Zostanie wykonana po kazdym przypadku testowym
	public void sprzataj() {
		Liczby licz = null;
	}
}